package com.ruoyi.system.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 订单对象 bdm_order
 *
 * @author ruoyi
 * @date 2024-12-13
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class BdmOrderVo implements Serializable {

    private String id;

    private String orderId;

    @Excel(name = "用户id")
    private Long userId;

    @Excel(name = "用户姓名")
    private String userName;

    @Excel(name = "用户姓名")
    private String nickName;

    @Excel(name = "用户姓名")
    private String phonenumber;

    @Excel(name = "用户姓名")
    private String avatar;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date paymentTime;

    @Excel(name = "商品名称")
    private String goodName;

    @Excel(name = "商品规格")
    private String goodSpecs;

    @Excel(name = "实付金额")
    private String payMoney;

    @Excel(name = "配送费")
    private String deliveryCost;

    @Excel(name = "收货人姓名")
    private String receiveName;

    @Excel(name = "收货地址")
    private String receiveAddress;

    @Excel(name = "收货人电话")
    private String receivePhonenum;

    @Excel(name = "配送方式", readConverterExp = "1=普通配送，2加急配送")
    private Long deliveryType;

    @Excel(name = "项目状态", readConverterExp = "1=待发货，2配送中，3待收货，4已完成,5已退单,6已关闭")
    private Long orderStatus;

    private Long o_id;
    private String logistics_company;
    private String l_id;
    private String so_id;
    private String send_date;
    private String lc_id;

    @Excel(name = "订单数")
    private Integer orderNumber = 0;

    @Excel(name = "粉丝订单金额")
    private BigDecimal orderMoney = BigDecimal.ZERO;

    @ApiModelProperty(value = "商品id")
    private String supplierGoodId;

    @Excel(name = "售后状态")
    private Integer salesState;

    private Integer orderType;

    /** 微信支付商户单号 */
    private String fakeId;

    /** 微信支付交易单号 */
    private String nativeId;
}
